package com.mars.upms.dao.mapper;

import org.apache.ibatis.annotations.Param;

import com.mars.base.dao.support.BaseMapper;
import com.mars.upms.dto.UpmsUserDto;
import com.mars.upms.entity.UpmsUser;

public interface UpmsUserMapper extends BaseMapper<UpmsUser, Integer> {
	
	/**
	 * 根据登录账号检索用户（支持用户名、手机号、邮箱登录）
	 * @param account
	 * @return
	 */
	public UpmsUser getAccount(String account) ;
	
	/**
	 * 获取用户详情信息（部门，角色，组，权限）
	 * @param id
	 * @return
	 */
	public UpmsUser getUserDetail(@Param("entity") UpmsUserDto dto) ;
	
	/**
	 * 批量重置用户密码
	 * @param ids
	 */
	public void batchResetPassword(@Param("id")Integer id, @Param("password")String password, @Param("salt")String salt) ;
	
	/**
	 * 批量修改用户状态
	 * @param ids
	 * @param status
	 */
	public void batchUpdateStatus(@Param("ids") Integer[] ids, @Param("status") Integer status) ;
	
	/**
	 * 记录用户登录的次数，IP，时间
	 * @param id
	 */
	public void loginRecord(@Param("id") Integer id, @Param("lastLoginIp") String lastLoginIp) ;
	
}